home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 164 / 164.d81 / long lines.src (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  2KB  |  105 lines

  1. 1 out
  2. 1000 ;***************************
  3. 1010 ;*     long lines v2.0     *
  4. 1020 ;* by rick nash    9/17/86 *
  5. 1030 ;*                         *
  6. 1040 ;* enables up to 4 screen  *
  7. 1050 ;* lines to be used to     *
  8. 1060 ;* enter or edit 1 prog    *
  9. 1070 ;* line. sys49152 to exec  *
  10. 1080 ;***************************
  11. 1090 ;
  12. 1100 ;
  13. 1110 *=$c000 ;org 49152
  14. 1120 ;
  15. 1130 ptr1 = $fb
  16. 1140 ptr2 = $fd
  17. 1150 insert = $a52a
  18. 1160 inlin = $a560
  19. 1170 print1 = $aaca
  20. 1180 patch1 = $c0c0
  21. 1190 patch2 = patch1+22
  22. 1200 ;
  23. 1210 ; move basic and kernal to ram
  24. 1220 ;
  25. 1230 lda #$00
  26. 1240 tay
  27. 1250 sta ptr1
  28. 1260 sta ptr2
  29. 1270 ldx #$a0
  30. 1280 stx ptr1+1
  31. 1290 ldx #$e0
  32. 1300 l1 stx ptr2+1
  33. 1310 l2 lda (ptr1),y
  34. 1320 sta (ptr1),y
  35. 1330 lda (ptr2),y
  36. 1340 sta (ptr2),y
  37. 1350 iny
  38. 1360 bne l2
  39. 1370 inc ptr1+1
  40. 1380 ldx ptr2+1
  41. 1390 inx
  42. 1400 bne l1
  43. 1410 ;
  44. 1420 ; bank out rom chips
  45. 1430 ;
  46. 1440 lda $01
  47. 1450 and #%11111101
  48. 1460 sta $01
  49. 1470 ;
  50. 1480 ; prepare new subroutines
  51. 1490 ;
  52. 1500 ldx #21
  53. 1510 l3 lda inlin,x
  54. 1520 sta patch1,x
  55. 1530 dex
  56. 1540 bpl l3
  57. 1550 ldx #29
  58. 1560 l4 lda print1,x
  59. 1570 sta patch2,x
  60. 1580 dex
  61. 1590 bpl l4
  62. 1600 ;
  63. 1610 ; make patches to operating system
  64. 1620 ;
  65. 1630 ldx #$00
  66. 1640 ldy #$00
  67. 1650 l5 lda lotab,x
  68. 1660 beq done
  69. 1670 sta ptr1
  70. 1680 lda hitab,x
  71. 1690 sta ptr1+1
  72. 1700 lda pchtab,x
  73. 1710 sta (ptr1),y
  74. 1720 inx
  75. 1730 bne l5
  76. 1740 done rts
  77. 1750 ;
  78. 1760 ; patch for 'insert line' routine
  79. 1770 ;
  80. 1780 patch3 lda $5f
  81. 1790 bne l6
  82. 1800 dec $60
  83. 1810 l6 dec $5f
  84. 1820 ldy $0b
  85. 1830 l7 lda $c0fb,y
  86. 1840 sta ($5f),y
  87. 1850 dey
  88. 1860 bne l7
  89. 1870 jmp insert
  90. 1880 ;
  91. 1890 ; patch address and data tables
  92. 1900 ;
  93. 1910 lotab byt $cb,$da,$de,$84,$ba,$cd,$d0,$e7
  94. 1920 byt $f1,$06,$0b,$f5,$13,$16,$ce,$1f
  95. 1930 byt $20,$21,$84,$85,$fd,$fc,$a2,$b4
  96. 1940 byt $c2,$ff,$8a,$a4,0
  97. 1950 hitab byt $c0,$c0,$c0,$a5,$a5,$a5,$a5,$a5
  98. 1960 byt $a5,$a6,$a6,$a4,$a5,$a5,$c0,$a5
  99. 1970 byt $a5,$a5,$a4,$a4,$c0,$c0,$e8,$e8
  100. 1980 byt $e6,$e7,$e1,$e1
  101. 1990 pchtab byt $c1,$c1,$c0,$c1,$c1,$c0,$c0,$c1
  102. 2000 byt $c0,$c1,$c0,$c1,$c0,$c0,$b0,$4c
  103. 2010 byt <patch3,>patch3,<patch1,>patch1,$01,$01,$04,$04
  104. 2020 byt $9f,$9f,$c1,$c1
  105.